/**
 * 暴力解法，双层for循环，第一层循环查找等于val的元素
 * 第二层循环改变数组：nums[j - 1] = nums[j]
 * @param {number[]} nums
 * @param {number} val
 * @return {number}
 */
const removeElement = (nums, val) => {
  for (let i = 0; i < nums.length; i++) {
    if (nums[i] === val) {
      for (let j = i + 1; j < nums.length; j++) {
        nums[j - 1] = nums[j]
      }
      i--
      nums.length--
    }
  }
  return nums.length
}

console.log(removeElement([3, 2, 2, 3], 3))